Navigable Website Analysis Engine

ABSTRACT

An optimization engine allows website publishers and other network document publishers to view and navigate statistics and scoring methodologies of a search engine. Publishers may thus gain a better understanding of how their website or network document is scored and how to optimize those documents to increase a search engine score. The user is thus able to navigate the network from the perspective of a search engine, viewing webpages, websites, and links in the same way a search engine would analyze them. Upon making changes to a website or network document, publishers may further request on-demand re-crawling of their website or network document to view changes in the score. Alerts may also be activated by a user to notify the user when certain conditions are met.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation application of and claims the benefitof priority from U.S. application Ser. No. 12/273,004, entitled“NAVIGABLE WEBSITE ANALYSIS ENGINE,” and filed on Nov. 18, 2008, whichis a non-provisional application of U.S. Provisional Application No.60/988,810, entitled “SEARCH ENGINE OPTIMIZATION ENGINE,” and filed onNov. 18, 2007. The content of the aforementioned applications isincorporated herein by reference in its entirety.

FIELD OF ART

Aspects of the invention generally relate to analyzing a networkdocument. More specifically, aspects of the invention provide methodsand systems for evaluating a network document and providing transparencyinto the manner in which the network document is analyzed and scored bya search engine. Thus, a user may view and navigate a network from theperspective of a search engine.

BACKGROUND

Providing quality search results on a search engine can be a complexprocess. Analyzing a given document on a network such as the Internet todetermine its relation to other documents on the network requiresmillions of calculations, with each calculation attempting to modelhuman perception as a mathematical or logical formula. Because of thiscomplexity, website and other network document owners, whose webpagesand other documents are the subject of these calculations, are oftenunable to fully appreciate and understand how and why their webpages ornetwork documents are scored by search engines. Without a clearunderstanding of the analysis and scoring mechanism, publishers ofwebsites and other network documents might not be able to capitalize onthe ability of search engines to attract users to their websites.

BRIEF SUMMARY

This Summary is provided to introduce a selection of concepts in asimplified form that are further described below in the DetailedDescription. This Summary is not intended to identify key features oressential features of the claimed subject matter, nor is it intended tobe used to limit the scope of the claimed subject matter.

According to some aspects of the present disclosure, an optimizationengine may provide a transparent and navigable interface through whichwebsite publishers (and other network document publishers) may view andunderstand how a website or other network document is scored by a searchengine. Thus, a user may be able to examine a desired level of scoringdetail by selecting a corresponding factor used in the scoring analysis.In one example, a user may review how links embedded in the user'swebsite affect the website's score by viewing the scoring methodologyand data for those links. Statistics may also be provided to furtherillustrate how scores are derived.

According to another aspect, the optimization engine may providesuggestions for raising a search engine score for a website or othernetwork document. Based on the optimization engine's analysis, potentialareas for improvement may be identified and methods for making suchimprovements may be generated. Once changes are made to the website, theuser may immediately see the difference in score by requesting anon-demand re-analysis (or re-crawl) of the website.

According to yet another aspect, users may be able to set alerts forwhen a website's score, a sub-score or some other analysis factorreaches a specified threshold. For example, a user may request an alertbe sent if and when the number of broken links on a website exceeds two.

BRIEF DESCRIPTION OF THE DRAWINGS

Certain embodiments are illustrated by way of example and not limited inthe accompanying figures in which like reference numerals indicatesimilar elements and in which:

FIG. 1 illustrates a block diagram of an example communication networkin which one or more embodiments may be implemented.

FIG. 2 illustrates a block diagram of an example computing environmentin which one or more aspects described herein may operate.

FIG. 3 illustrates an example network diagram of optimization enginesoperating in a global environment according to one or more aspectsdescribed herein.

FIG. 4 illustrates a block diagram of an example optimization engineaccording to one or more aspects described herein.

FIG. 5 illustrates an example data flow for processing a search queryaccording to one or more aspects described herein.

FIGS. 6A and 6B illustrate a navigation map for an optimization engineaccording to one or more aspects described herein.

FIGS. 7A-7P illustrate portions of an optimization engine dashboardinterface according to one or more aspects described herein.

FIG. 8 illustrates an example listing of orphaned webpages according toone or more aspects described herein.

FIG. 9 illustrates an example listing of outgoing links according to oneor more aspects described herein.

FIG. 10 illustrates an example crawl queue status page according to oneor more aspects described herein.

FIGS. 11A-11B illustrate portions of an example webpage scoresheetaccording to one or more aspects described herein.

FIGS. 11C and 11D illustrate example rule creation interfaces accordingto one or more aspects described herein.

FIG. 11E illustrates an example interface for sending a scoresheetaccording to one or more aspects described herein.

FIGS. 12A-12D illustrate interfaces of an example webpage scorecardaccording to one or more aspects described herein.

FIGS. 13A-13C illustrate interfaces of an example market focus analysispage according to one or more aspects described herein.

FIGS. 14A-D illustrate interfaces of a link scorecard according to oneor more aspects described herein.

FIG. 15 illustrates an example dialog box providing suggestions forimproving a webpage or network document according to one or more aspectsdescribed herein.

FIG. 16 illustrates an example broken link listing according to one ormore aspects described herein.

FIG. 17 illustrates an example method for analyzing a webpage andnavigating the analysis according to one or more aspects describedherein.

FIG. 18 illustrates an example method for creating and generating alertsaccording to one or more aspects described herein.

FIG. 19 illustrates a block diagram of an example alert system accordingto aspects described herein.

FIG. 20 illustrates a link flow distribution according to one or moreaspects described herein.

FIG. 21 illustrates a method for navigating an optimization engineaccording to aspects described herein.

FIGS. 22A-B illustrate private branding of an optimization engineinterface according to one or more aspects described herein.

FIG. 23 illustrates an example website including a search bar foraccessing a privately branded optimization engine interface according toone or more aspects described herein.

FIGS. 24A-D illustrate example interfaces for creating and customizing aprivately branded optimization engine according to one or more aspectsdescribed herein.

FIGS. 25A-B illustrate example customer home and account managementinterfaces according to one or more aspects described herein.

FIG. 26 illustrates a page listing filter interface according to one ormore aspects described herein.

FIG. 27 illustrates a link listing filter interface according to one ormore aspects described herein.

FIG. 28 illustrates an example external incoming link report accordingto one or more aspects described herein.

One or more of the drawings include registered trademarks such asSEOENG™ and Search Engine Optimization Engine®. Other trademarks mayalso appear in one or more drawings.

DETAILED DESCRIPTION

In the following description of the various embodiments, reference ismade to the accompanying drawings, which form a part hereof, and inwhich are shown by way of illustration various embodiments in which theinvention may be practiced. It is to be understood that otherembodiments may be utilized and structural and functional modificationsmay be made without departing from the scope of the present invention.

FIG. 1 illustrates a network environment 100 in which aspects describedherein may be used. Environment 100 may include multiple client devices110 connected to multiple servers 120 via a network 140. The network 140may include wired or wireless connections and networks such as a localarea network (LAN), a wide area network (WAN), a telephone network, suchas the Public Switched Telephone Network (PSTN), an intranet, theInternet, or a combination of networks. Two client devices 110 and threeservers 120 have been illustrated as connected to network 140 forsimplicity. In practice, there may be more or fewer client devices andservers. Also, in some instances, a client device may perform thefunctions of a server and a server may perform the functions of a clientdevice. The client devices 110 may include data processing machines,such mainframes, minicomputers, personal computers, laptops, personaldigital assistants, mobile phones or the like, capable of connecting tothe network 140. The client devices 110 may transmit data over thenetwork 140 or receive data from the network 140 via a wired, wireless,or optical connection.

FIG. 2 illustrates an exemplary client device, e.g., device 110 ofFIG. 1. The client device 201 may include a bus 210, a processor 220, amain memory 230, a read only memory (ROM) 240, a storage device 250, aninput device 260, an output device 270, and a communication interface280. The bus 210 may include one or more conventional buses that permitcommunication among the components of the client device 201. Theprocessor 220 may include any type of conventional processor ormicroprocessor that interprets and executes instructions. The mainmemory 230 may include a random access memory (RAM) or another type ofdynamic storage device that stores information and instructions forexecution by the processor 220. The ROM 240 may include a conventionalROM device or another type of static storage device that stores staticinformation and instructions for use by the processor 220. The storagedevice 250 may include a magnetic and/or optical recording medium andits corresponding drive. The input device 260 may include one or moreconventional mechanisms that permit a user to input information to theclient device 201, such as a keyboard, a mouse, a pen, voice recognitionand/or biometric mechanisms, etc. The output device 270 may include oneor more conventional mechanisms that output information to the user,including a display, a printer, a speaker, etc. The communicationinterface 280 may include any transceiver-like mechanism that enablesthe client device 201 to communicate with other devices and/or systems.For example, the communication interface 280 may include mechanisms forcommunicating with another device or system via a network, such asnetwork 140 of FIG. 1.

As will be described in detail below, the client devices 201 may beconfigured to perform searching-related operations. The client devices201 may perform these operations in response to processor 220 executingsoftware instructions contained in one or more computer-readable media,such as memory 230. A computer-readable medium may be defined as one ormore memory devices. The software instructions may be read into memory230 from another computer-readable medium, such as the data storagedevice 250, or from another device via the communication interface 280.The software instructions contained in memory 230 causes processor 220to perform search-related activities described below. Alternatively,hardwired circuitry (e.g., application specific integrated circuits) maybe used in place of or in combination with software instructions. Thus,aspects described herein are not limited to any specific combination ofhardware, firmware and/or software.

Referring again to FIG. 1, the servers 120 may include one or more typesof computing devices such as a mainframe, a minicomputer, or a personalcomputer, capable of connecting to the network 140 and to communicatewith the client devices 110. In alternative implementations, the servers120 may include mechanisms for directly connecting to one or more clientdevices 110. The servers 120 may transmit data over network 140 orreceive data from the network 140 via a wired, wireless, or opticalconnection. The servers may be configured in a manner similar to thatdescribed above in reference to FIG. 2. Additionally, the server 120 mayinclude a search engine 130 usable by the client devices 110. Theservers 120 may further store network documents such as webpagesaccessible by the client devices 110.

FIG. 3 illustrates a global network infrastructure having search enginesand optimization engines (e.g., SEOENG™ optimization engine). The globalnetwork infrastructure 300 includes network 305 (e.g., the Internet)that is configured to connect clients 380 located across multiplelocations such as Beijing, San Francisco, New York, Dubai, Paris andTokyo, to each other and to search engine data centers 330. A loadbalancer 370 may also be included in the network 305 to distributesearch engine and/or data requests according to the relative processingloads of data centers 330. Each of search engine data centers 330 mayinclude one or more servers and may be located in different geographiclocations. For example, search engine data centers 330 may each includea data warehouse server 320 for storing copies of data from the network305 (e.g., copies of websites and other network documents), a searchengine server 310 for processing search queries and a search engineoptimization server 335 configured to provide search engine optimizationtools. Alternatively, each of servers 310, 320 and 335 may operateindependently instead of in combination as a single data center. Inindependent operation, servers 310, 320 and 335 may still accessservices and/or data provided by each of the other servers throughcommunication channels 301. For example, search engine optimizationserver 335 may request data from search engine server 310 to providesuggestions for improving a particular website or network document. Awebsite, as used herein, generally refers to a grouping of any set ofwebpages and or network documents. Accordingly, a website might not belimited to just a subdomain. In another example, search engine server310 may access copies of network websites stored in data warehouseserver 320 to provide search results in response to a query. Each datacenter indirectly communicates via the catalogue 375 to facilitateshared nothing architecture. Shared nothing architecture reduces thecommunications bandwidth needed for a massively parallel search engine.In particular, catalogue 375 may be configured to control which datacenter a user interacts with. Catalogue 375 may track which data centeris responsible for which part of the Internet and may also beresponsible and configured for storing user settings. Catalogue 375 maybe configured to manage communications such as search queries oroptimization requests from clients 380 and to distribute those requeststo the appropriate server.

Each of search engine data centers 330 including servers 310, 320 and335 may be controlled by a deployment infrastructure 350. In particular,deployment infrastructure 350 may be configured to manage software orfirmware updates and may be responsible for configuring or upgradingservers. In one or more configurations, commands, requests and othercommunications may be received from client 380 via the network 305 on aproprietary communications channel (nonpublic). Additionally oralternatively, each of data centers 330 may operate independently of oneanother (i.e., without needing to communicate with each other) throughthe use of catalogue 375.

FIG. 4 illustrates a simplified block diagram of an example optimizationengine operating environment. In the environment, optimization engine400 includes a search engine optimization server 406 through which user404 may interact with optimization engine 400, e.g., to specify awebpage, website, or link he or she wishes to explore. Optimizationengine 400 may comprise a real-time interface which allows the user 404to navigate the search engine 401 data and retrieve it on-demand.Optimization engine 400 may further be configured to generatesuggestions, alerts, and to trigger re-crawls. The optimization engineserver 406 may pass queries on to search engine 401 that retrievesinformation from database 408 as well as crawler servers 409. Searchengine server 401 is configured and responsible for sorting, indexing,and scoring webpages. Search engine 400 may function with typical searchengine behavior using the raw data from the data warehouse server 402.Optimization engine 400 is a cipher for search engine 401, allowing theuser (e.g., user 404) to navigate the data stored in database 408 in acomprehensible and informative format. Database 407 may be configured tostore historical information such as previous versions of websites,historical webpage statistics, other META data derived from searchengine 401 and the like. Crawler servers 409 may be an automated modulethat is configured to crawl through websites 411 and obtain relevantsearch engine data such as content and link information. Crawler servers409 may be configured to crawl a network of websites or webpages on apredefined schedule or in an on-demand fashion or both. Results of thequeries from user 404 or user 403 may be transmitted from search engine401 to search engine optimization server 406 to generate results for theuser's review and perusal. Accordingly, optimization engine 400 maydecode or translate the data and processing performed by search engine401 into user friendly information, statistics, recommendations and thelike.

FIG. 5 illustrates a flow diagram for providing navigation into a searchengine via search results. Initially, a user may enter 510 a searchquery such as a phrase. For example, the user query may be the phrase“green frogs.” The search query may then be processed 520 by a searchengine to generate results that match or have some level of relevance tothe specified query. Various methods for determining relevance of awebpage to a query may be used. Once the search results have beengenerated, the results may be presented 530 to the user for review. Inone arrangement, the search results may be displayed as in results page535. Results page 535 includes a search bar 540 indicating the searchphrase or query that was specified. In addition, page 535 includes aresults listing 545 in which each result is identified by a title 550, adescription 555, a uniform resource identifier (URI) 560 such as a URL,an optimization engine scoresheet 565 and a cache option 570. Cacheoption 570 allows a user to retrieve a webpage or network document thatwas previously cached on a specified date and at a specified time (i.e.,versus retrieving the live or current webpage or network document).Using the cache option 570 may be quicker because the search enginemight not need to query the actual website for the newest data. To enterthe website 580, a user may select the title 550, the description 555 orthe uniform resource identifier 560. Alternatively, if the user wishesto view 590 an optimization engine scoresheet of the website, the usermay select scoresheet option 565. Results page 535 is but an example ofhow a results listing may be presented and is not intended to limit thepossible configurations of result pages.

FIGS. 6A-6B illustrates an example diagram for navigating anoptimization engine. Initially, referring to FIG. 6A, a user may enter aURL for a website or network document that is to be analyzed by theoptimization engine. Upon entering the URL, a webpage scoresheet 603 maybe displayed and the user may navigate to a website dashboard 600 whichmay be displayed. The website dashboard 600 may include overviewinformation such as website statistics, link statistics, crawlstatistics, alerts, reports and other META data such as robots.txtassociated with the website. From the dashboard 600, a user may navigateto listings of webpages 605 in the website, listings of links (e.g.,outgoing, incoming) 607 in the website and a rules creation interface623. From a listing of webpages 605, a user may access a webpage'sscoresheet 603 or market focus details 611. Each webpage may have itsown scoresheet based on its content. From scoresheet 603 a user mayaccess market focus information 611, a webpage snapshot 613, a detailedscorecard 615 and/or the actual webpage 617 or dashboard 600. The usermay also access a rules creation interface 623, listings of webpages 605and listings of links 607. From the listing of links 607, a user mayfurther navigate to link scorecards 619 corresponding to each link and alink snapshot 621. Listings of links 607 a may include links that areresident in any webpage of the website while listing of links 607 b mayinclude links that are resident in the webpage to which scoresheet 603corresponds. Link snapshot 621 allows a user to view where the linkexists in the webpage being analyzed while link scorecards 619 providesan analysis of the link as it pertains to the webpage's score.Additionally, a rule creation page or interface 623 may be provided tothe user from scorecard 615 or 619, scoresheet 603, market focus 611 orcustomer home 609. Rule creation interface 623 allows a user to definecustom rules to trigger alerts or events. Further details relating torule creation interfaces is provided below. Customer home 609 may be acustomizable interface that provides a user with an entry point into oneor more website dashboards or webpage scoresheets. Through customer home609, the user may also configure alerts and may configure re-crawls thatare either on-demand 627 or scheduled 625.

Referring to FIG. 6B, calculation boxes 629 may be configured tocalculate scores and provide analyses of webpages and websites. In oneor more arrangements, optimization engine servers 406 of FIG. 4 mayembody calculation boxes 629. Scores may be pre-calculated or may becalculated on an on-demand basis. In one configuration, a queue 633 maybe used to schedule the processing of requests for re-analysis orre-scoring. Queue 633 may be viewable from either a dashboard 631 or ascoresheet 635 so that a user may determine when he or she may expect anupdated or new analysis.

From any of the above pages, a trackback tool may be provided in aheader or other portion of the display to allow the user to go back to aprevious section of the optimization engine. For example, from marketfocus information 611, a user may be able to track back to websitedashboard 600 or scoresheet 603. The navigation flow illustrated inFIGS. 6A and 6B is but an example of how users may navigate through thecontent of an optimization engine and is not intended to limit possiblenavigation flows.

FIGS. 7A-F illustrate portions of an example website dashboard interfacethat may be presented to a user over a network for display on a displaydevice at the user's location. Referring to FIG. 7A, for instance,dashboard interface 700 includes a search bar 703 where a user may entera URL corresponding to a website they wish to analyze for optimizationpurposes. The dashboard 700 may include webpage statistics 705, linkstatistics 707, crawl statistics 709, alerts 711, reports 713, robots715 and rule creation option 717. Rule creation option 717 allows a userto create triggers to alert a user whenever the rule is triggered, orperform some specified action. Webpage statistics 705 providesinformation relating to website page quality 719, missing websiteinformation 721 and duplicate information 723. This information mayaffect the website's score. Website page quality 719, in particular,includes an analysis of a number of documents in the website 725, anumber of HTML webpages in the website 727, a number of irrelevantwebpages in the website 729 and a number of orphaned webpages in thewebsite 731. The number of documents in the website 725 may refer to alldocuments regardless of whether they are webpages, WORD documents, PDFfiles or the like. Number of HTML webpages 727, on the other hand, mightonly count those pages that are HTML pages. A webpage may be consideredirrelevant if the webpage does not have a sufficiently high webpagescore. A webpage score is the result of the total LINK FLOW minus thepenalties associated with the webpage. This process is shown on thewebpage scorecard. LINK FLOW is discussed in further detail later inthis document. Orphaned webpages, on the other hand, refer to webpagesor network documents to which an external (i.e., not in the samewebsite) incoming link points, but which is not referred to by a webpageof the website in which the webpage exists. Thus, a user may be able tonavigate to the webpage from an external website, but not from thewebsite in which it is actually stored. Other scoring systems may beused instead of or in addition to webpage score or LINK FLOW. Forexample, node ranking as described in U.S. Pat. No. 6,285,999 may beused instead of LINK FLOW.

Referring to FIG. 7B, missing website information 721 includesinformation such as a number of missing META titles in a website 732, anumber of missing META descriptions in the website 733 and a number ofmissing META keywords in the website 735. A META title refers to thetext that a user will see at the top of a web browser for a givenwebpage or network document. Typically, a META title is defined in HTMLusing the <title> </title> tags. META descriptions, on the other hand,refer to words, phrases and descriptions that define the content of theunderlying webpage or network document. Using HTML, META descriptionsmay be specified as follows: <META NAME=“Description”CONTENT=“description”>. META keywords correspond to terms describing thetheme or context of the webpage or network document. Using HTML, METAkeywords may be specified as follows: <META NAME=“keywords”CONTENT=“keywords”>.

Duplicate website information 723 includes a number of duplicate METAtitles 737, duplicate META descriptions 739, duplicate META keywords741, duplicate MARKET FOCUS 743, duplicate URL spellings 745 and exactduplicate webpages in the website 747 as illustrated in FIG. 7C.Duplicate MARKET FOCUS 743, for example, relates to the grouping ofcategories or contexts associated with a website or webpage. MARKETFOCUS 743 may be determined by the search engine. Duplicate META title737 refer to webpages in the website that have the same META title whileduplicate META descriptions 739 and META keywords 741 refer to webpageshaving the same META description or keywords, respectively. DuplicateURL spellings 745, on the other hand, refers to URLs that are spelledthe same but with different capitalization.

For each of the above analysis factors, an option such as page listingoption 750 may be provided to display a list of the webpages or networkdocuments that contributed to that factor. For example, in FIG. 7A, thenumber of orphaned webpages 731 may include option 750 that identifiesthe orphaned webpage(s). FIG. 8 illustrates an example orphaned webpagelisting 800.

Additionally or alternatively, various terms or phrases may be foreignto a user. Accordingly, such terms or phrases may include an interactiveindicator (such as a question mark) that a user may select to obtain adefinition or further understanding. For example, in FIG. 7A, the numberof irrelevant webpages 729 and the number of orphaned webpages 731include indicator 752. Upon selecting indicator 752, the user may bedirected to an explanation page or provided with a pop-up window withfurther details about the corresponding term or phrase. In one example,selecting indicator 752 may take the user to a corresponding learningcenter page containing information and directions relating to how, what,and why he or she needs to make changes indicated or address the issuesidentified. Indicators such as indicator 752 may be provided throughoutthe various interfaces of an optimization engine.

Referring now to FIG. 7D, link statistics section 707 providesinformation such as outgoing link analysis 753, incoming link analysis755, link quality 757, link neighborhood 759 and LINK LOSS 761. Outgoinglink analysis 753 provides information that includes a number ofoutgoing links in the website 763, number of external outgoing links inthe website 765, and number of internal outgoing links in the website767. Outgoing links refer to links that are directed to other webpages(i.e., not a link within the webpage), while the number of externaloutgoing links 765 refers to the number of links to webpages outside ofthe website. Number of internal outgoing links 767, on the other hand,refers to the number of links directed to webpages within the website.Generally, the number of external outgoing links 765 added to the numberof internal outgoing links the website 767 will equal the number ofoutgoing links 763.

In FIG. 7E, incoming links analysis 755 provides similar data, exceptthat it refers to incoming links. For example, analysis 755 includesnumber of total incoming links 767, number of external incoming links769 and number of internal incoming links 771. The number of totalincoming links 767 refers to the total number of links from other pagesand websites to pages in the website. The number of external incominglinks 769 refers to the number of links from other websites to pages inthe website while the number of internal incoming links 771 refers tothe number of links from pages in the website to other pages in thewebsite.

Link quality analysis 757 displays factors that contribute to the valueand strength of links in the website as illustrated in FIG. 7F. Thus,link quality analysis 757 might include a number of broken links 773(i.e., links that do not lead to a valid destination), number ofdangling links 775 (i.e., links to non-indexable or webpages that do nothave any followable links), number of nofollow links 777 (i.e., linkstagged with the rel=nofollow attribute) and number of non-editoriallinks 779. Non-editorial links 779 refer to links that were notmentioned in the context of writing about a particular subject matterthat was of importance to the webpage being linked to.

In FIG. 7G, Link neighborhood 759 provides information such as anaverage LINK FLOW of external webpages linking to the website 781 and anaverage LINK FLOW of external webpages linked from the website 783.

Finally, with respect to FIG. 7H, LINK LOSS 761 shows a user a website'stotal internal incoming LINK LOSS score 785, total external incomingLINK LOSS score 787, total external outgoing LINK LOSS score 789 and atotal LINK LOSS score 791. LINK LOSS refers to a condition which iscaused by inefficient linking Factors contributing to a LINK LOSS scoreinclude external outgoing links, dangling links and orphaned webpages.External LINK LOSS refers to LINK FLOW that is being sent out to otherwebsites while internal LINK LOSS is LINK FLOW that is not beingpreserved in a website due to its internal linking structure. Forwebsites, total internal LINK LOSS is calculated by subtracting thetotal internal LINK FLOW from the maximum theoretical total LINK FLOW,which is, in turn, determined by the formula 1* the number of webpagesin that website or set of webpages.

For one or more of the above link statistics factors, an option mayinclude an option for displaying links that contributed to the factorscore. For example, referring to FIG. 7D, number of outgoing links 763may include option 793 that displays a listing of outgoing links. FIG. 9illustrates a listing of outgoing links. Each link listing, e.g., linklisting 901 may include a view link option 903 which highlights the linkin the corresponding webpage or network document and a view linkscorecard option 905. Link scorecards are discussed in greater detailbelow.

Referring to FIG. 7I, webpage crawl statistics 709 provides informationsuch as a first crawled date and time 702, a last crawled date and time704 and a number of crawls that have occurred 706. An option 708 may beprovided that displays the website's status in a crawl queue. FIG. 10illustrates an example crawl queue status page 1000.

Referring to FIG. 7J, alerts page 712 may display all notifications thatreflect negatively on the website's score or that a user has selectedfor display. For example, alerts 714 may include the presence ofexternal outgoing LINK LOSS, duplicate content, duplicate META titlesand the like. In one or more configurations, alerts page 712 may furtherdisplay an average response time of webpages in the website. Referringto FIG. 15, hovering over an alert may provide a dialog box 1500explaining the alert and suggesting corrective measures.

Clicking on an alert, on the other hand, may provide a listing of linksor pages that are associated with the alert. For example, selectingbroken links are present alert 714 a in FIG. 7J may generate a linklisting showing all links that are broken. FIG. 16 illustrates a brokenlink listing 1600.

Referring to FIG. 7K, various website reports 720 may be provided ininterface 722. Reports may include LINK FLOW analysis reports, anexternal incoming link (i.e., a backlink) analysis report showing theoverall interaction of LINK FLOW coming to the website and the like.

FIGS. 7M-O illustrate portions of a LINK FLOW report 758. FIG. 7M, forexample, includes a listing of webpages 760 as well as a LINK FLOWdistribution 762, internal incoming LINK FLOW 764, external incomingLINK FLOW 766, total LINK FLOW 768, number of internal incoming links770 and total number of external incoming links 772 for each listedwebpage. FIG. 7N illustrates a second portion of report 758. Report 758may further include information such as a number of external incominglinks 726, number of external outgoing links 728, market focus 774, METATitle 776 and META Description 778 for each page. Still further, and asillustrated in FIG. 7O, report 758 may provide META Keywords information780. The various data provided for each webpage may further be colorcoded (not shown) to denote various warnings or alerts. For example, ifthe MARKET FOCUS of a webpage is a duplicate of another webpage or ifthe META Title 776 is the same as another webpage, the entry may behighlighted or include some indicator (not shown) signifying such. Thereport may also contain additional tabs 718 showing other or additionalreport information relating to Internal Incoming Link Loss, ExternalIncoming Link Loss, External Outgoing Link Loss, and Total Link Loss.

FIG. 28 illustrates another example report providing external incominglink information. External incoming link report may include data such asa webpage from which the link originates, a destination webpage, a LINKFLOW, a number of followable links, a LINK FLOW share and the anchortext associated with the link.

Referring to FIG. 7L, Robots section 715 displays any Robots.txt filesthat are included in the website. Robots.txt files are directives toautomated computer programs used by search engines to crawl the Internetand store information about webpages. For example, directives mayinstruct a robot to not index a certain webpage.

FIG. 7P illustrates a website-level rule creation interface 784 in whicha user may specify conditions for which an event or action should beperformed. Rule creation interface 784 includes a rule name entry field788 for defining a name of the rule, rule description field 792 fordescribing the intent or purpose of the rule, available variables 794,variable description 796 and rule definition area 798. A tutorial option730 may be provided to guide a user through how a rule is defined.Additionally, the user may save the rule 732, delete the rule 734 orrun/validate the rules 736. Running or validating the rule using option736 may allow a user to determine whether the rule is defined correctly,working and/or providing the intended result. Because the rule creationinterface is configured at the website level, variables 794 may includewebsite-level variables (in addition to webpage-level variables). Rulesmay further be executed or validated against all webpages, links andother attributes of the entire website. Results 738 may display the ruleas defined 740, the variables used 742 as well the value 744corresponding to the variables and a result 746.

FIGS. 11A-B illustrate various portions of a webpage scoresheet.Referring to FIG. 11A, webpage scoresheet 1100 may provide statisticsand analyses for a webpage in the website such as the homepage.Scoresheet 1100 may include multiple information sections includingvital statistics 1101, link statistics 1103, crawl statistics 1105,alerts 1107, repair station 1109, create rules 1111 and email option1113. Create rules for webpage option 1111 as discussed herein allows auser to create a trigger for a specified condition such as a LINK FLOWscore dipping below a certain threshold. Email option 1113 on the otherhand, allows a user to email a webpage scoresheet or a link to thewebpage scoresheet.

In vital statistics section 1101, scoresheet 1100 may provideinformation such as a webpage score 1115, a webpage MARKET FOCUS 1117,penalties 1119, LINK FLOW distribution 1121, internal and externalincoming LINK FLOWS 1122 and 1123, respectively, total LINK FLOW 1125and total LINK LOSS 1127. A relevance field 1129 may further indicatewhether the webpage or network document is irrelevant. Scoresheet 1100may further include information such as a content type 1140, encoding1142 (i.e., how characters and/or text are encoded in the webpage),response time 1144 (i.e., how fast a webpage loads) and crawl depth 1146(i.e., the minimum number of times a website visitor must click on aLink from the “root” webpage in order to get to a particular webpage).

Webpage score 1115 may provide an overall score for the page that isselectable to display additional levels of detail regarding the score.FIG. 12A illustrates a webpage scorecard 1200 that provides a detailedview of how webpage score 1115 of FIG. 11A was derived or calculated.For example, scorecard summary 1205 explains that the webpage score wasderived by adding together the total LINK FLOW of the webpage multipliedby 100 and the penalty factor (the penalty factor being negative). Thepercentages may be calculated based on a maximum score, penalty factorand total LINK FLOW.

FIG. 11C illustrates a webpage-level rule creation interface 1102.Similar to the website-level rule creation interface 784 shown in FIG.7P, webpage-level rule creation interface 1102 may include a rule nameentry field 1104 for defining a name of the rule, rule description field1106 for describing the intent or purpose of the rule, availablevariables 1108, variable description 1110 and rule definition area 1112.Additionally, the user may also save the rule 1114, delete the rule 1116or run/validate the rules 1118. In contrast to a website-level rulecreation interface, webpage-level rule creation interface 1102 might notinclude variables that are website specific or of website scope.

FIG. 11D illustrates a link rule creation interface 1150. Link rulecreation interface 1150 may be similar to webpage rule creationinterface 1102 (FIG. 11C) and website rule creation interface 784 (FIG.7P). Instead of website level or webpage level variables, link rulevariables 1152 might only include link level variables. Link rules maybe defined for a single link or for multiple links as desired.

FIG. 11E illustrates an interface 1160 for sending a webpage scoresheet.Interface 1160 may include an address field 1162 for identifying theaddress of an intended recipient. Once entered, the user may select sendoption 1164 to the addressee.

FIG. 12B illustrates a detailed listing of penalties and how they affectthe overall webpage score. For example, the number of unique words onthe webpage 1207 affected the overall webpage score by −22.87% while thepercentage of “incoming paid links” 1209 affected the overall webpagescore by −3.85%.

FIG. 12C illustrates a repair station 1220 that aids a user in repairingvarious errors or issues with the webpage. For example, upon selectingAdd Missing Links for drop down menu 1222, replacement page code may beautomatically generated. FIG. 12D illustrates a display of replacementpage code 1224 that a user may copy and paste to correct the missinglinks error.

Referring again to FIG. 11A, selecting the MARKET FOCUS text 1117, forexample, may display a MARKET FOCUS RANK of the various MARKET FOCUSwords or phrases that were considered. FIG. 13A illustrates a MARKETFOCUS details page 1300 that includes a listing of MARKET FOCUS words,contexts and phrases 1305 considered and their ranks 1310. The MARKETFOCUS rank may be calculated using a shingle analysis which includesconsiderations of webpage content, META title, META descriptions andincoming anchor text. FIGS. 13B and 13C illustrate the incominganchortext analysis and the shingle analysis, respectively. For example,FIG. 13C illustrates the phrases considered 1330 and the number ofoccurrences 1335 in the website or webpage. In FIG. 13B, on the otherhand, anchor text (i.e., text used in a link) is measured for LINK FLOWand ranked in accordance with the determined LINK FLOW.

Referring now to FIG. 11B, link statistics section 1103 provides linkanalysis information similar to that of link statistics section 707 ofFIG. 7A. However, FIG. 11B shows link statistic information for theparticular webpage and FIG. 7A shows link statistic information for theentire website. In particular, link statistics section 1103 displaysoutgoing link information 1131, incoming link information 1133, linkquality data 1135, link neighborhood information 1137 and LINK LOSSanalysis 1139. In addition to providing an option 1145 to view a listingof links contributing to each of the factors analyzed (e.g., factors1143), an option 1141 to view the link in the webpage is also provided.

As noted above, the optimization engine may provide a listing of linksthat contribute to one or more factors used in determining the websiteor webpage score. Referring again to FIG. 9, each of link entries 901may include a view link option 903 and a link scorecard option 905. Uponselecting link scorecard option 905, a scorecard may be displayeddetailing how the link was scored.

FIGS. 14A-D illustrate various portions of an example link scorecard.Referring to FIG. 14A, link scorecard 1400 may display a scorecardsummary 1401 that provides a description of the factors used indetermining an overall LINK FLOW share score 1403. For example, theoverall LINK FLOW share score 1403 may be determined based on the totalLINK FLOW on the webpage, a number sharing LINK FLOW, a gross LINK FLOWshare (i.e., the amount of LINK FLOW passed from one webpage to anotherthrough a particular page), a penalty score, a percentage of LINK FLOWshare remaining after penalties and gained LINK FLOW from other links'penalties. Scorecard 1400 may include a general information sectionabove the section tabs that provides information about the webpage onwhich the link exists and the webpage to which the link is directed. Aview link option 1405 and an indication of when the statistics weregenerated 1407 may also be provided.

FIG. 14B illustrates an additional level of detail relating to thelink's penalties. Penalties section 1410, for example, provides abreakdown of how the penalty score is determined. Various penaltyfactors include the link's order on the webpage, anchor text font size,whether the link is non-editorial, relevance of the link, number ofduplicate anchor text on and to webpage and a percentage LINK FLOW shareto be considered.

FIG. 14C illustrates an alert section of the link scorecard 1400. Inparticular, the alerts may include whether the link is relevant, thefont size of the link, whether the link is editorial or not and whetherthe link has the same anchor text as another link on the website. Asnoted previously, selecting or hovering over one of alerts 1413 mayprovide a suggestion on how to eliminate the alert.

FIG. 14D illustrates a link details section of scorecard 1400. Linkdetails section 1420 provides a listing 1425 of the various linkcharacteristics including net LINK FLOW share, anchor text, font size,whether the link has a session ID, whether the link is tagged withnofollow and whether the link is broken, dangling, reciprocal, oreditorial.

Other factors that may be considered in determining a ranking of awebpage, a website or a link may include reverse redirect information(i.e., which webpages are being redirected to a webpage), forwardredirect information (i.e., which webpages are being redirected to froma given webpage, total or alternative search volume by MARKET FOCUS(i.e., how many people on the Internet or the network are searching fora given webpage or website), age of website, statistical deviationanalysis of external incoming anchor text (i.e., analysis of differencesin text being used to link to a particular webpage/website), purchasedor relevant link detection (i.e., links being used to subvert a searchengine's algorithms), and/or unnatural keyword stuffing (i.e., use ofkeywords or phrases to subvert a search engine's algorithms).

FIG. 17 illustrates an example method by which a user may request asearch engine optimization analysis of a website or webpage and retrieveand view details of the analysis. In step 1700, a user may specify awebsite, webpage or network document address. The address may comprise auniform resource identifier such as a URL. In step 1705, theoptimization engine may analyze the website according to various searchengine algorithms to derive a website score. This may occur before orafter the user requests in step 1700. The analysis may include some orall of the factors described herein such as LINK FLOW, duplicateinformation, missing tags, word length and the like. Once the analysisis complete, a summary may be displayed in step 1710. In one or moreconfigurations, the analysis may already have been pre-compiled andavailable upon receiving the request. Thus, the optimization enginemight not need to perform an analysis upon receiving the request;instead, results from the previous analysis may be retrieved. Thesummary may contain a first level of scoring detail such as informationsimilar to that displayed in dashboard 700 of FIG. 7A. In particular,the summary may include information considered by the search engineduring the analysis. This provides transparency into the search engineprocess and allows a user to optimize his or her website, webpages, orlinks based on the actual analysis used by the search engine.

From the scoring or analysis summary, the user may subsequently navigateto a second level of scoring detail in step 1715. For example, the usermay select a penalties section to view the factors that negativelyaffected the website's score. In another example, the second level ofscoring detail may include a breakdown of the overall website score or asubscore contributing to the overall score. In step 1720, the secondlevel of scoring detail may be displayed to the user. As with the firstlevel of detail, the second level of scoring detail may provide factorsand scoring used and generated by the scoring engine in determining thewebsite, webpage, and link's overall score or rank.

In step 1725, the optimization engine may receive a request to viewsuggestions for improvement. In step 1730, the optimization engine maygenerate and present the suggestions to the user. The optimizationengine may generate such suggestions based on the factors negativelyimpacting the website's score. For example, if the website has brokenlinks, the optimization engine may suggest that the broken links befixed to raise the website's score. In step 1735, the optimizationengine may receive a request to re-analyze the website and update thescore. Such a request may be received, for example, once a user hasupdated his website with certain fixes or made improvements based on thegenerated suggestions. In step 1740, the optimization engine mayinstruct or request a search engine to re-analyze the website inresponse to the request (i.e., on-demand). The optimization engine mayfurther re-analyze and re-display the search engine data to the user.Re-analysis may include a re-crawling of the website and correspondingwebpages, network documents, and websites. A new scoring summary maythen be displayed to the user as in step 1710. Alternatively, there-analysis of the website may be queued for a later time (e.g., a timewhen the website is scheduled to be re-crawled).

FIG. 18 illustrates an example method for creating and receiving alertsthrough an optimization engine or tool. In step 1800, the optimizationengine may receive a user specification of a rule or condition that theywish to monitor for in the website, webpage, or link. The rule orcondition may include a number of broken links, a LINK FLOW score,amount of duplicate content and the like. In step 1805, the optimizationengine may store the rule specifications in a catalog configured tostore rules that are applied by the optimization engine. In step 1815,the optimization engine may determine the rule or condition has been metor satisfied. If so, the optimization engine may generate and send analert to the user in step 1820. If not, the engine may continuemonitoring for the condition or rule in step 1825. The rule may,additionally or alternatively, trigger an external action such as aprocess outside of the search engine or re-crawling. In one example, thesearch engine may send an alert along with suggestions for eliminatingor improving the condition met.

FIG. 19 illustrates a block diagram of an alert system. Inputted alerts1900 may be sent to catalog 1903, which maintains rules that are appliedby the calculation engines 1905. The calculation engines 1905 may beconfigured to organize and analyze data either by schedule 1907 or byon-demand requests 1909. During the course of organizing and/oranalyzing data, an alert triggered may be triggered by one or more ofalerts 1900. When such an event occurs, the calculation engines 1905 maysend an alert to client devices 1911 and/or 1913. Alerts catalog 1903and calculation engines 1905 may be part of a single system or may beseparate from one another. For example, alerts catalog 1903 andcalculation engines 1905 may be part of a distributed optimizationengine.

According to one or more aspects, an optimization engine may provide auser with LINK FLOW distribution information. LINK FLOW distributionrefers to the set of transition probabilities or adjacency functions ofa random surfer as determined using node ranking. Further detailsregarding a method for node ranking in a linked database may be found inU.S. Pat. No. 6,285,999. Node ranking refers to a numerical weighting toeach element (e.g., a webpage) of a hyperlinked set (e.g., a website ofwebpages) of documents, such as the World Wide Web (WWW), with thepurpose of “measuring” its relative importance within the set.

FIG. 20 illustrates a diagram depicting LINK FLOW distribution within awebsite 2005. Each of webpages 2000 is shown as having a specific noderank 2001.

The node rank values 2001 are the entries of the dominant eigenvector ofthe modified adjacency matrix. The node ranking is represented as thedominant eigenvector in the set PR(p_(n)). The eigenvector may beexpressed as:

$R = \begin{bmatrix}{{PR}\left( p_{1} \right)} \\{{PR}\left( p_{2} \right)} \\\vdots \\{{PR}\left( p_{N} \right)}\end{bmatrix}$

where R is the solution of the equation

$R = {\begin{bmatrix}{\left( {1 - d} \right)/N} \\{\left( {1 - d} \right)/N} \\\vdots \\{\left( {1 - d} \right)/N}\end{bmatrix} + {{d\begin{bmatrix}{\left( {p_{1},p_{1}} \right)} & {\left( {p_{1},p_{2}} \right)} & \ldots & {\left( {p_{1},p_{N}} \right)} \\{\left( {p_{2},p_{1}} \right)} & \ddots & \; & \vdots \\\vdots & \; & {\left( {p_{i},p_{j}} \right)} & \; \\{\left( {p_{N},p_{1}} \right)} & \ldots & \; & {\left( {p_{N},p_{N}} \right)}\end{bmatrix}}R}}$

where the adjacency function l(p_(i), p_(j)) is 0 if page p_(j) does notlink to p_(i), and normalized such that, for each j

${{\sum\limits_{i = 1}^{N}\; {\left( {p_{i},p_{j}} \right)}} = 1},$

That is, the elements of each column sum up to 1. The dominanteigenvectors are shown as a result of this calculation, embodied as noderanks 2001, and assigned to each of webpages 2000 in the graph ofwebpages. By visiting each of webpages 2000, a user can see the“importance” of a webpage in relation to the rest of the webpages 2000in that graph.

By displaying the scoring mechanism of each link's weighting of thisprobability, the optimization engine may display the entire process ofthe algorithm for node ranking in a linked database, rather than simplythe final dominant eigenvectors (i.e., node rankings 2001) which areassigned to each webpage or network document. Providing users with thisdetailed information may be important to assist them in distributing,funneling, and controlling the final dominant eigenvectors (i.e., noderanking) within their website (i.e., website 2005). Without thisknowledge, the method for node ranking webpages in a linked database isessentially a “black box.” That is, while users may know the noderanking of a webpage or network document, they do not know the LINK FLOWDistribution, or the set of transition probabilities or adjacencyfunctions (e.g., l(p_(i), p_(j))) that determine those finaleigenvectors. Typically, website owners simply make changes, and waitfor the search engine to recalculate the node ranking algorithm and todisplay the revised results (which can take up to a month or more for atypical search engine to re-crawl the website). By showing them the LINKFLOW Distribution, and by allowing users to request immediate re-crawlsof a website, each adjacency function can be modified to tweak the finaleigenvectors by a precise amount. An optimization engine may furtherprovide individual link scorecards 2002 for each link within website2005. Link scorecards 2002 each provide a score 2003 for thecorresponding link.

Using the optimization engine, a user may visually navigate through thepath taken by a search engine when analyzing a website and crawlingthrough the network of websites or webpages during the analysis. Asillustrated above, a user may begin by requesting the analysis of awebsite. In order to determine how the website was analyzed and scored,the user may navigate through the analysis, essentially following thepath taken by the search engine to produce the score. Referring again toFIG. 6, a user may begin by viewing the website dashboard 600 displayingan overview of the website for which analysis was requested. The usermay then navigate to each of the webpages in the website contributing tothe website's score through webpage listings 605 and view acorresponding scoresheet, e.g., scoresheet 603. Scores may be determinedbased on the same metric and thus, an analysis and score for a firstpage, website or link may be compared with a second page, website orlink, respectively, using the scores. In one arrangement, anoptimization engine may provide a comparison of an analysis of the firstpage with an analysis of the second page (e.g., a side by sidecomparison). A user may drill down to a further level of detail byreviewing factors contributing to each webpage's score (e.g., by viewingscorecard 615). The user may further follow links that are analyzed bythe search engine when scoring the website or webpage. Using theselinks, the user may navigate the path taken by the search engine whencrawling for data and performing the website analysis. For example, fromscoresheet 603, a user may view link listings 607 b that were analyzedby the search engine. The user may then navigate to link scorecards 619or proceed to a webpage scoresheet 623 of a linked page using the link.Thus, the user is navigating through the network (e.g., Internet) fromthe perspective of the search engine.

FIG. 21 illustrates an example method of navigating through a series ofwebsites, webpages, and links using an optimization engine. In step2100, a user may request an analysis of a particular website. In step2105, the optimization engine may return a score and an analysis of thewebsite. The analysis may include scoring data generated and algorithmsused by the search engine. In step 2110, the optimization engine mayreceive a request to navigate to a portion of the analysis that includesan analysis of at least one link. For example, a user may request to seethe scoresheet (e.g., scoresheet 603 of FIG. 6) of a particular webpagein the website. The scoresheet may include an analysis of one or morelinks. In step 2115, the optimization engine may display the requestedportion of the analysis (e.g., the scoresheet of a webpage) to the user.In step 2120, the user may subsequently request to view a scorecard(e.g., link scorecard 619 of FIG. 6) of a link contributing to the scoreof the webpage and website. In step 2125, the link scorecard may bedisplayed to the user. In step 2130, the user may request to follow thelink. In response to the request, the optimization engine may generateand display a webpage scoresheet of the page to which the link isdirected in step 2135. Accordingly, a user may continue to navigate thenetwork in this fashion, viewing the path taken by the search engine andthe analysis performed along the way. This provides the user with anin-depth view of how a search engine operates and ranks various webpagesand network documents and how the user may affect his or her website'sranking from the perspective of the search engine.

FIGS. 22A and 22B illustrate a private label interface for accessing andusing an optimization engine. A private label interface 2200 allows acustomer or client to have their logos, brands, images, banners, audio,video, text and the like placed in the optimization engine interface.Thus, instead of a generic or optimization engine specific interface,the interface may include logos 2203 and images 2205 that create theappearance and feel of the customer or client's website. FIG. 22B showsthat the customer or client's branding persists through each portion ofthe optimization engine.

To provide access to a private label interface such as interface 2200 ofFIGS. 22A & B, a customer or client may place a search bar on theirwebsite as illustrated in FIG. 23. The search bar 2303 of FIG. 23 mayinclude code which allows the optimization engine to remember from wherethe user originated and will display the appropriate branding even whenthe user returns at a later date. In particular, the optimization enginemay associate a user with a particular customer or client's website ifthey originated from the customer or client's optimization engine searchbar even when the user enters via the generic optimization engine'swebsite.

FIGS. 24A-C illustrate interfaces through which an optimization enginemay be customized. FIG. 24A, for example, illustrates a customizationoverview where each of the images, banners, symbols, text chunks arelisted to identify what will be shown in a live version. Customizationoverview 2400 may further provide an option 2403 to preview theoptimization engine prior to publishing the branded engine to a liveenvironment. Each listing 2401 may further specify a date that theadvertisement piece was pushed live. Additionally, each listing 2401 mayinclude a location 2405 of the advertisement piece (e.g., where an imageis pulled or uploaded from) and an option 2407 to upload or change thelisting. Once a user has finalized the engine, the user may choose thego live option 2409 to publish all of the advertisement pieces to theirlive customized engine.

FIG. 24B illustrates an interface from which a code segment may becopied or downloaded onto a customer's website for integration of asearch bar that links to the customized optimization engine.

FIG. 24C illustrates a text upload interface for inserting text into thecustomized optimization engine and FIG. 24D illustrates an advertisementor image upload interface for inserting images into the customizedengine.

FIG. 25A illustrates a customer home interface where an optimizationengine customer may manage one or more aspects of his or her account.For example, in interface 2500, a user may choose from a variety ofoptions including editing customer information, purchasing or cancelingan OEM package, adding or managing websites, managing a customoptimization engine (e.g., interface 2200 of FIGS. 22A & B), viewing OEMinformation, viewing child OEM customers, viewing the latest OEMcustomer manual, reviewing an agreement with the optimization enginecompany, taking a test drive and learning more about the optimizationengine.

FIG. 25B illustrates an interface through which a user may view thewebsites to which he or she has subscribed or for which the user haspurchased an analysis. In interface 2501, for example, the customer hasone subscription 2503 to www.seoeng.com. Options 2505 may be providedfor viewing the website dashboard 2505 a, re-crawling the website 2505b, managing scheduled crawls (e.g., deleting, adding, changing schedule)2505 c and managing rules 2505 d.

FIG. 26 illustrates an interface through which an optimization enginecustomer may filter a page listing based on a specified criterion.Filtering criteria may include URL, MARKET FOCUS, META Titles, METADescriptions and/or META Keywords. A user may enter the wildcard phraseor keyword to filter in field 2601, select the criteria to be filteredthrough drop down menu 2603 and filter option 2605. The pages listed maythen be filtered and a new page list may be displayed that match thespecified parameters.

FIG. 27, on the other hand, illustrates an interface 2700 through whichan optimization engine customer or user may filter a link listing basedon various criteria. For example, link in listing 2701 may be filteredbased on a keyword in the anchortext. Alternatively, a user may choosequick filtering options 2703. Options 2703 are predefined filters thatmay be used to identify broken links 2703 a, dangling links 2703 b,editorial links 2703 c, nofollow links 2703 d, reciprocal links 2703 eand sessionid links 2703 f.

As described in detail above, a navigable, transparent search enginewhich can be utilized to inspect how a search engine works may be usedto optimize websites and other network documents. Such an optimizationengine or tool may reside alongside a traditional search engine, andrepresent the navigation and transparency of that search engine.

It should be understood that any of the method steps, procedures orfunctions described herein may be implemented using one or moreprocessors in combination with executable instructions that cause theprocessors and other components to perform the method steps, proceduresor functions. As used herein, the terms “processor” and “computer”whether used alone or in combination with executable instructions storedin a memory or other computer-readable storage medium should beunderstood to encompass any type of now known or later developedcomputing devices and/or structures including but not limited to one ormore microprocessors, special-purpose computer chips, field-programmablegate arrays (FPGAs), controllers, application-specific integratedcircuits (ASICs), combinations of hardware/firmware/software, or otherspecial or general-purpose processing circuitry.

The methods and features recited herein may further be implementedthrough any number of computer readable media that are able to storecomputer readable instructions. Examples of computer readable media thatmay be used include RAM, ROM, EEPROM, flash memory or other memorytechnology, CD-ROM, DVD or other optical disk storage, magneticcassettes, magnetic tape, magnetic storage and the like.

Although specific examples of carrying out the invention have beendescribed, those skilled in the art will appreciate that there arenumerous variations and permutations of the above-described systems andmethods that are contained within the spirit and scope of the inventionas set forth in the appended claims. Additionally, numerous otherembodiments, modifications and variations within the scope and spirit ofthe appended claims will occur to persons of ordinary skill in the artfrom a review of this disclosure.

What is claimed is:
 1. A method comprising: receiving, by a computingsystem having at least one processor, a request to analyze at least oneof a website and a webpage, wherein the at least one of the website andthe webpage includes a plurality of links to one or more networkdocuments; determining, by the computing system, a ranking of the atleast one of the website and the webpage among a plurality of websitesor webpages based on an analysis of one or more traffic-independentattributes of the plurality of links including analyzing at least oneattribute of a first link relative to at least one attribute of a secondlink, wherein the one or more traffic-independent attributes of theplurality of links is different from attributes of one or more networkdestinations of the plurality of links; and generating, by the computingsystem, user-viewable information detailing a manner in which theranking was determined, the user-viewable information including a listof the plurality of links including the first and second links, a firstoption to view the first link, and a list of the one or moretraffic-independent attributes analyzed in determining the ranking; ifthe first option to view the first link is selected, generating, by thecomputing system, a display of the at least one of the website and thewebpage, wherein the display highlights the location of the first link.2. The method of claim 1, wherein the ranking corresponds to apopularity of the at least one of the website and the webpage.
 3. Themethod of claim 1, further comprising displaying an analysis of the atleast one of the website and the webpage, the analysis including anumber of external incoming links and a number of internal incominglinks.
 4. The method of claim 1, further comprising determining a secondranking of a second webpage, wherein the second ranking is determinedusing the same metric as the first ranking.
 5. The method of claim 1,wherein determining the ranking includes analyzing an anchor text of theplurality of links, wherein analyzing the anchor text of the pluralityof links includes comparing a value associated with first anchor text ofthe first link with a value associated with second anchor text of thesecond link.
 6. The method of claim 1, further comprising generating alist of broken links from the plurality of links.
 7. The method of claim1, wherein the user-viewable information includes a second option toview the second link, the method further comprising: if the secondoption to view the second link is selected, generating, by the computingsystem, a display of the at least one of the website and the webpage,wherein the display highlights the location of the second link but notthe location of the first link.
 8. A non-transitory machine readablemedium storing instructions that, when executed, cause an apparatus to:receive a request to analyze at least one of a website and a webpage,wherein the at least one of the website and the webpage includes aplurality of links to one or more network documents; determine a rankingof the at least one of the website and the webpage among a plurality ofwebsites or webpages based on an analysis of one or moretraffic-independent attributes of the plurality of links includinganalyzing at least one attribute of a first link relative to at leastone attribute of a second link, wherein the one or moretraffic-independent attributes of the plurality of links is differentfrom attributes of one or more network destinations of the plurality oflinks; and generate user-viewable information detailing a manner inwhich the ranking was determined, the user-viewable informationincluding a list of the plurality of links including the first andsecond links, a first option to view the first link, and a list of theone or more traffic-independent attributes analyzed in determining theranking; if the first option to view the first link is selected,generate a display of the at least one of the website and the webpage,wherein the display highlights the location of the first link.
 9. Thenon-transitory machine readable medium of claim 8, wherein the rankingcorresponds to a popularity of the at least one of the website and thewebpage.
 10. The non-transitory machine readable medium of claim 8,wherein the instructions, when executed, further cause the apparatus todisplay an analysis of the at least one of the website and the webpage,the analysis including a number of external incoming links and a numberof internal incoming links.
 11. The non-transitory machine readablemedium of claim 8, wherein the instructions, when executed, furthercause the apparatus to determine a second ranking of a second webpage,wherein the second ranking is determined using the same metric as thefirst ranking.
 12. The non-transitory machine readable medium of claim8, wherein determining the ranking includes analyzing an anchor text ofthe plurality of links, wherein analyzing the anchor text of theplurality of links includes comparing a value associated with firstanchor text of the first link with a value associated with second anchortext of the second link.
 13. The non-transitory machine readable mediumof claim 8, wherein the instructions, when executed, further cause theapparatus to generate a list of broken links from the plurality oflinks.
 14. The non-transitory machine readable medium of claim 8,wherein the user-viewable information includes a second option to viewthe second link, and wherein the instructions, when executed, furthercause the apparatus to: if the second option to view the second link isselected, generate a display of the at least one of the website and thewebpage, wherein the display highlights the location of the second linkbut not the location of the first link.
 15. An apparatus comprising: aprocessor; and memory storing instructions that, when executed by theprocessor, cause the apparatus to: receive a request to analyze at leastone of a website and a webpage, wherein the at least one of the websiteand the webpage includes a plurality of links to one or more networkdocuments; determine a ranking of the at least one of the website andthe webpage among a plurality of websites or webpages based on ananalysis of one or more traffic-independent attributes of the pluralityof links including analyzing at least one attribute of a first linkrelative to at least one attribute of a second link, wherein the one ormore traffic-independent attributes of the plurality of links isdifferent from attributes of one or more network destinations of theplurality of links; and generate user-viewable information detailing amanner in which the ranking was determined, the user-viewableinformation including a list of the plurality of links including thefirst and second links, a first option to view the first link, and alist of the one or more traffic-independent attributes analyzed indetermining the ranking; if the first option to view the first link isselected, generate a display of the at least one of the website and thewebpage, wherein the display highlights the location of the first link.16. The apparatus of claim 15, wherein the ranking corresponds to apopularity of the at least one of the website and the webpage.
 17. Theapparatus of claim 15, wherein the instructions, when executed, furthercause the apparatus to display an analysis of the at least one of thewebsite and the webpage, the analysis including a number of externalincoming links and a number of internal incoming links.
 18. Theapparatus of claim 15, wherein the instructions, when executed, furthercause the apparatus to determine a second ranking of a second webpage,wherein the second ranking is determined using the same metric as thefirst ranking.
 19. The apparatus of claim 15, wherein determining theranking includes analyzing an anchor text of the plurality of links,wherein analyzing the anchor text of the plurality of links includescomparing a value associated with first anchor text of the first linkwith a value associated with second anchor text of the second link. 20.The apparatus of claim 15, wherein the instructions, when executed,further cause the apparatus to generate a list of broken links from theplurality of links.
 21. The apparatus of claim 15, wherein theuser-viewable information includes a second option to view the secondlink, and wherein the instructions, when executed, further cause theapparatus to: if the second option to view the second link is selected,generate a display of the at least one of the website and the webpage,wherein the display highlights the location of the second link but notthe location of the first link.